import pandas as pd

import PD.PdUtil
import fileUtil
import 去除企宽


def handle(batch, t):
    history = pd.read_excel(r"D:\家宽\小区中断人数.xlsx")

    df = 去除企宽.get_df(batch, ['所属小区', 'account', 'offline_time'])
    df = df.drop_duplicates()

    # 同时统计人次和每个小区内 account 的出现次数
    grouped = df.groupby(['所属小区', 'account'])['account'].count().reset_index(name='个体出现次数')
    r1 = grouped.groupby('所属小区')['account'].count().reset_index(name=f'人数{t}')
    r2 = grouped[grouped['个体出现次数'] > 1].groupby('所属小区')['account'].count().reset_index(name=f'重复人数{t}')
    result = r1.merge(r2, on='所属小区', how='outer')
    history = history.merge(result, on='所属小区', how='outer')

    history = history.fillna(0)

    # 获取除第一列外的其他列名
    columns_to_convert = history.columns[1:]

    # 将这些列转换为 int64 类型
    history[columns_to_convert] = history[columns_to_convert].astype('int64')

    history.to_excel(r"D:\家宽\小区中断人数.xlsx", index=False)


if __name__ == '__main__':
    handle('0401_0430', '2025-04')
